package com.link.base.tencent.corpwx.addressbook.model;

import com.link.core.basic.model.BasicModel;

/**
 * 通讯录用户对象
 * 
 * @author 欧阳振强
 * @date 2019/1/2
 */
public class User extends BasicModel {
    /**
     * 用户Id，对应管理端的帐号，企业内必须唯一。不区分大小写，长度为1~64个字节
     */
    private String userId;
    /**
     * 用户名称 长度为1~64个utf8字符
     */
    private String name;
    /**
     * 用户别名,长度1~32个utf8字符
     */
    private String alias;
    /**
     * 手机号码。企业内必须唯一，mobile/email二者不能同时为空
     */
    private String mobile;
    /**
     * 性别。1表示男性，2表示女性
     */
    private String gender;
    /**
     * 邮箱。长度6~64个字节，且为有效的email格式。企业内必须唯一，mobile/email二者不能同时为空
     */
    private String email;
    /**
     * 成员所属部门id列表,不超过20个
     */
    private String department;
    /**
     * 部门内的排序值，默认为0，成员次序以创建时间从小到大排列。数量必须和department一致，数值越大排序越前面。有效的值范围是[0, 2^32)
     */
    private String order;
    /**
     * 职务信息。长度为0~128个字符
     */
    private String position;
    /**
     * 座机。32字节以内，由纯数字或’-‘号组成。
     */
    private String telephone;
    /**
     * 个数必须和department一致，表示在所在的部门内是否为上级。1表示为上级，0表示非上级。在审批等应用里可以用来标识上级审批人
     */
    private String isLeaderInDept;
    /**
     * 启用/禁用成员。1表示启用成员，0表示禁用成员
     */
    private String enable;
    /**
    * 头像url。注：如果要获取小图将url最后的”/0”改成”/100”即可。第三方仅通讯录应用可获取
    */
    private String avatar;
    /**
     * 是否邀请该成员使用企业微信（将通过微信服务通知或短信或邮件下发邀请，每天自动下发一次，最多持续3个工作日），默认值为true。
     */
    private String toInvite;
    /**
     * 激活状态: 1=已激活，2=已禁用，4=未激活。
     * 已激活代表已激活企业微信或已关注微工作台（原企业号）。未激活代表既未激活企业微信又未关注微工作台（原企业号）。
     */
    private String status;
    /**
    * 员工个人二维码，扫描可添加为外部联系人；第三方仅通讯录应用可获取
    */
    private String qrCode;
    /**
     * 对外职务，如果设置了该值，则以此作为对外展示的职务，否则以position来展示。
     */
    private String externalPosition;
    /**
     * 地址。长度最大128个字符
     */
    private String address;
    /**
     * link系统中的Source字段
     */
    private String source;
    /**
     * 具有客户联系功能标识
     */
    private String followUserFlag;

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getExternalPosition() {
        return externalPosition;
    }

    public void setExternalPosition(String externalPosition) {
        this.externalPosition = externalPosition;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public String getToInvite() {
        return toInvite;
    }

    public void setToInvite(String toInvite) {
        this.toInvite = toInvite;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getQrCode() {
        return qrCode;
    }

    public void setQrCode(String qrCode) {
        this.qrCode = qrCode;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAlias() {
        return alias;
    }

    public void setAlias(String alias) {
        this.alias = alias;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public String getOrder() {
        return order;
    }

    public void setOrder(String order) {
        this.order = order;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    public String getTelephone() {
        return telephone;
    }

    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }

    public String getIsLeaderInDept() {
        return isLeaderInDept;
    }

    public void setIsLeaderInDept(String isLeaderInDept) {
        this.isLeaderInDept = isLeaderInDept;
    }

    public String getEnable() {
        return enable;
    }

    public void setEnable(String enable) {
        this.enable = enable;
    }

    public String getFollowUserFlag() {
        return followUserFlag;
    }

    public void setFollowUserFlag(String followUserFlag) {
        this.followUserFlag = followUserFlag;
    }
}
